Add source control information extensibility point#3063
Add source control information extensibility point#3063rainersigwald merged 1 commit intodotnet:masterfrom
Conversation
|
@rainersigwald @AndyGerlicher @eerhardt @jeffkl @nguerrera PTAL |
There was a problem hiding this comment.
Should they override this target? or BeforeTargets it?
There was a problem hiding this comment.
The issue is there can be only one override, so if 2 things want to set these properties/items...
There was a problem hiding this comment.
There can only be one source control provider for a project. Having multiple doesn't make much sense.
There was a problem hiding this comment.
I'll change it to BeforeTargets. There might potentially be scenario when one target fills in some information and another target (using the same source control) fills in more info.
src/Tasks/Microsoft.Common.props
Outdated
There was a problem hiding this comment.
I don't think I follow what this property is actually used for. Here we say what it is NOT used for, but never what it IS used for.
There was a problem hiding this comment.
The next line explains. I'm open to suggestions to word it better.
There was a problem hiding this comment.
The next line says ‘PublishRepositoryUrl’ property. Is that a type-o or really a different property? I thought it was a different prop
There was a problem hiding this comment.
It's different property. Let me reword this to be clearer.
eerhardt
left a comment
There was a problem hiding this comment.
Just some nits on the comments.
|
@richlander FYI |
|
@eerhardt Updated the comments. Let me know if it's clearer now. |
src/Tasks/Microsoft.Common.props
Outdated
There was a problem hiding this comment.
they shall only do so if the project sets PublishRepositoryUrl property to true
Ok - this helped me understand what is going on. Thanks!
|
@rainersigwald I'd like to get this into VS 15.7 and the next dotnet SDK (whatever the version number is). Should I retarget the PR to vs15.7 branch? |
AndyGerlicher
left a comment
There was a problem hiding this comment.
Looks good to me. If @rainersigwald is ok with it we can merge. master is correct for 15.7.
There was a problem hiding this comment.
Do we need to insert the DependsOn property we talked about somewhere so folks can inject into this but still have a package compatible with VS2015?
There was a problem hiding this comment.
Yes, i'll add the property.
I also have one more piece of feedback coming from NuGet team to look into before we merge.
9bfd5ef to
c34c7fe
Compare
|
@AndyGerlicher @rainersigwald Based on feedback from NuGet team I have conditioned reading the For example, if
|
|
@nguerrera FYI |
c34c7fe to
5a1c178
Compare
|
On second thought, since we need to make the usage of Standard CI opt-in and thus they are not defaults anymore it seems it would be better to look at Standard CI as another source information provider and move the properties to a separate package ( Updated PR to only include the target that serves as a sync point for consumers and producers of the source control info. |
|
@rainersigwald Could you please merge? |
| Source control information provider that sets these properties and items shall execute before this target (by including | ||
| InitializeSourceControlInformation in its BeforeTargets) and set source control properties and items that haven't been initialized yet. | ||
| --> | ||
| <Target Name="InitializeSourceControlInformation" /> |
There was a problem hiding this comment.
Did you decide that we didn't need a DependsOn property here? I thought we wanted that for some packages that wanted to support downlevel.
There was a problem hiding this comment.
I have added SourceControlInformationFeatureSupported so that they can condition on that. Let me double check that this property is actually reasonable to use.
There was a problem hiding this comment.
|
Thanks everyone! |
Adds a few extensibility points to common targets that enable source control and SourceLink package features and fully deterministic compilation.
See https://github.com/tmat/repository-info/blob/master/docs/Readme.md for details.
TODO:
Supersedes #2960